home *** CD-ROM | disk | FTP | other *** search
/ The Game Master (3rd Edition) / The Game Master 3rd edition.iso / files / gameture / ttowers / ttenter.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1984-12-21  |  4.5 KB  |  180 lines

  1. 1  COLOR 0,0,0
  2. 1000  REM *********************************************************************
  3. 1010  REM *                                                                   *
  4. 1020  REM *        TRIVIAL TOWERS QUESTION ENTRY PROGRAM                      *
  5. 1030  REM *        COPYRIGHT 1984, VINYARD SOFTWARE, INC.                     *
  6. 1040  REM *        UNPUBLISHED WORK - ALL RIGHTS RESERVED                     *
  7. 1050  REM *                                                                   *
  8. 1060  REM *********************************************************************
  9. 1200  COLOR 7,4
  10. 1210  KEY OFF
  11. 1220  CLS
  12. 1230  PRINT TAB(18);"********************************************************"
  13. 1240  PRINT TAB(18);"**       TRIVIAL TOWERS QUESTION ENTRY PROGRAM        **"
  14. 1250  PRINT TAB(18);"**       COPYRIGHT 1984, VINYARD SOFTWARE, INC.       **"
  15. 1255  PRINT TAB(18);"**       UNPUBLISHED WORK - ALL RIGHTS RESERVED       **"
  16. 1260  PRINT TAB(18);"********************************************************"
  17. 1270  PRINT:PRINT
  18. 1320  PRINT "AFTER YOU HAVE REMOVED THE PROGRAM DISK AND INSERTED THE"
  19. 1330  PRINT "QUESTIONS DISK, PUSH THE RETURN KEY";
  20. 1340  INPUT Y$
  21. 1350  COLOR 7,4,0 : CLS
  22. 1360  PRINT "YOU MAY UPDATE ONE OF THE FOLLOWING FILES (OR CREATE A NEW ONE):"
  23. 1370  PRINT:PRINT
  24. 1390  FILES
  25. 1400  PRINT:PRINT
  26. 2000  REM            OPEN FILE
  27. 2020  PRINT "WHAT IS THE NAME OF THE QUESTIONS FILE (INCLUDE DISK DRIVE:)"
  28. 2030  PRINT "(TYPE  R  TO RETURN TO TRIVAL TOWERS, OR"
  29. 2035  PRINT " TYPE  X  TO EXIT FROM PROGRAM)       ";
  30. 2040  INPUT Y$
  31. 2050  IF Y$ = "R" GOTO 9900
  32. 2051  IF Y$ = "r" GOTO 9900
  33. 2052  IF Y$ = "X" GOTO 9900
  34. 2053  IF Y$ = "x" GOTO 9900
  35. 2055  IF Y$ = "" GOTO 9900
  36. 2060  LET F$ = Y$
  37. 2070  CLOSE#1
  38. 2080  OPEN F$ AS #1
  39. 2090  FIELD#1,72 AS Q$, 56 AS A$
  40. 3000  REM        DISPLAY, UPDATE, OR EXIT
  41. 3010  CLS
  42. 3020  PRINT "LIST, DISPLAY, UPDATE, OR EXIT ";F$;"? (L/D/U/X)";
  43. 3030  INPUT Y$
  44. 3035  IF Y$ = "L" GOTO 4000
  45. 3036  IF Y$ = "l" GOTO 4000
  46. 3040  IF Y$ = "D" GOTO 5000
  47. 3041  IF Y$ = "d" GOTO 5000
  48. 3050  IF Y$ = "U" GOTO 6000
  49. 3051  IF Y$ = "u" GOTO 6000
  50. 3060  IF Y$ = "X" GOTO 1000
  51. 3061  IF Y$ = "x" GOTO 1000
  52. 3070  GOTO 3020
  53. 4000  REM          LIST TO PRINTER
  54. 4020  CLS
  55. 4030  GOSUB 8400
  56. 4040  PRINT : PRINT "ENTER QUESTION SET # TO START LISTING"
  57. 4050  PRINT "(NOTE THAT A ZERO WILL EXIT ROUTINE.)";
  58. 4060  INPUT L1 : IF L1 < 1 GOTO 3000
  59. 4070  PRINT : PRINT "ENTER QUESTION SET # TO END LISTING"
  60. 4080  PRINT "(NOTE THAT A ZERO WILL EXIT ROUTINE.)";
  61. 4090  INPUT L2 : IF L2 < 1 GOTO 3000
  62. 4100  IF L2 > N THEN LET L2 = N
  63. 4110  IF L2 < L1 THEN LET L2 = L1
  64. 4120  PRINT : PRINT "PLEASE PUSH RETURN KEY WHEN PRINTER IS ON";
  65. 4130  INPUT Y$
  66. 4140  CLS
  67. 4150  PRINT "LISTING FROM";L1;" TO";L2;" OUT OF FILE -> ";F$
  68. 4155  LPRINT "QUESTIONS AND ANSWERS FROM FILE -> ";F$;" <-" : LPRINT
  69. 4160  FOR I = L1 TO L2
  70. 4170      GET #1,I
  71. 4180      LPRINT "Q";I;":";Q$
  72. 4190      LPRINT "A";I;":";A$
  73. 4200      LPRINT
  74. 4210  NEXT I
  75. 4220  GOTO 3000
  76. 5000  REM DISPLAY QUESTION AND ANSWER SETS
  77. 5010  CLS
  78. 5020  GOSUB 8400
  79. 5030  PRINT
  80. 5040  PRINT "WHICH ONE DO YOU WANT TO DISPLAY?"
  81. 5050  PRINT "(NOTE:  A NUMBER LESS THAN ONE WILL EXIT THIS ROUTINE.)";
  82. 5060  INPUT N1
  83. 5070  IF N1<1 GOTO 3000
  84. 5080  IF N1>N GOTO 5040
  85. 5090  GET #1,N1
  86. 5100  CLS
  87. 5105  COLOR 0,2
  88. 5110  PRINT "QUESTION #";N1;" IS:"
  89. 5120  COLOR 0,5
  90. 5130  PRINT Q$
  91. 5140  COLOR 7,0
  92. 5150  LOCATE 5
  93. 5155  COLOR 0,2
  94. 5160  PRINT "ANSWER #";N1;" IS:"
  95. 5170  COLOR 0,5
  96. 5180  PRINT A$
  97. 5190  LOCATE 24
  98. 5195  COLOR 0,6
  99. 5200  PRINT "PUSH <RETURN> TO CONTINUE";
  100. 5210  INPUT Y$
  101. 5215  COLOR 0,4
  102. 5220  GOTO 5000
  103. 6000  REM      MODIFY THE QUESTIONS AND ANSWERS
  104. 6005  CLS
  105. 6010  COLOR 0,4
  106. 6020  PRINT "MODIFY, ADD, OR EXIT?  (M/A/X)";
  107. 6030  INPUT Y$
  108. 6040  IF Y$ = "M" GOTO 6100
  109. 6041  IF Y$ = "m" GOTO 6100
  110. 6050  IF Y$ = "A" GOTO 6500
  111. 6051  IF Y$ = "a" GOTO 6500
  112. 6060  IF Y$ = "X" GOTO 3000
  113. 6061  IF Y$ = "x" GOTO 3000
  114. 6070  GOTO 6020
  115. 6100  REM        MODIFY THE ACTUAL QUESTIONS AND ANSWERS
  116. 6110  CLS
  117. 6120  GOSUB 8400
  118. 6130  PRINT "WHICH SET DO YOU WANT TO MODIFY?"
  119. 6140  PRINT "(NOTE:  A NUMBER LESS THAN ONE WILL EXIT THIS ROUTINE.)";
  120. 6150  INPUT N1
  121. 6160  IF N1<1 GOTO 6000
  122. 6170  IF N1>N GOTO 6120
  123. 6180  GET#1,N1
  124. 6190  CLS
  125. 6195  COLOR 0,6
  126. 6200  PRINT "QUESTION SET";N1
  127. 6210  PRINT
  128. 6215  COLOR 0,5
  129. 6225  PRINT "OLD Q: ";Q$
  130. 6235  PRINT "OLD A: ";A$
  131. 6240  PRINT
  132. 6245  COLOR 0,6
  133. 6250  PRINT "ENTER NEW QUESTION (TYPE THE LETTER X TO EXIT)."
  134. 6260  COLOR 0,3
  135. 6262  PRINT
  136. 6265  PRINT "NEW QUESTION:"
  137. 6270  PRINT "1   5   10   15   20   25   30   35   40   45   50   55   60   65     72"
  138. 6280  LINE INPUT Q1$
  139. 6290  IF Q1$ = "X" GOTO 6000
  140. 6291  IF Q1$ = "x" GOTO 6000
  141. 6300  IF LEN(Q1$) < 73 GOTO 6330
  142. 6310  PRINT "QUESTION TOO LONG.  72 CHARACTER MAXIMUM.  PLEASE TRY AGAIN."
  143. 6320  GOTO 6270
  144. 6330  PRINT
  145. 6340  PRINT "NEW ANSWER:"
  146. 6350  PRINT "1   5   10   15   20   25   30   35   40   45   50    56"
  147. 6370  LINE INPUT A1$
  148. 6380  IF A1$ = "X" GOTO 6000
  149. 6381  IF A1$ = "x" GOTO 6000
  150. 6390  IF LEN(A1$) < 57 GOTO 6420
  151. 6400  PRINT "ANSWER TOO LONG.  56 CHARACTER MAXIMUM.  PLEASE TRY AGAIN."
  152. 6410  GOTO 6350
  153. 6420  LSET Q$ = Q1$
  154. 6440  LSET A$ = A1$
  155. 6450  PUT #1,N1
  156. 6460  COLOR 0,4
  157. 6470  IF Y$ = "M" GOTO 6100
  158. 6471  IF Y$ = "m" GOTO 6100
  159. 6500  REM         ADD QUESTION AND ANSWER SETS
  160. 6510  CLS
  161. 6520  GOSUB 8400
  162. 6530  N1=N+1
  163. 6540  PRINT
  164. 6550  GOTO 6250
  165. 7998  GOTO 9900
  166. 7999  STOP
  167. 8400  REM     DETERMINE NUMBER OF QUESTION AND ANSWER SETS IN THE FILE
  168. 8410  N = LOF(1)/128
  169. 8420  PRINT "THERE ARE";N;" QUESTION AND ANSWER SETS IN ";F$
  170. 8430  RETURN
  171. 9900  REM        END OF PROGRAM
  172. 9980  CLOSE#1
  173. 9990  COLOR 0,4
  174. 9991  CLS
  175. 9993  PRINT "REMOVE THE QUESTIONS DISK AND INSERT THE PROGRAM DISK, THEN PUSH THE RETURN KEY";
  176. 9994  INPUT X : COLOR 7,0,0
  177. 9995  IF (Y$="X") OR (Y$="x") THEN CLS : KEY ON : END
  178. 9998  CHAIN "A:TTOWERS.BAS"
  179. 9999  END
  180.